package colecciones.bloques;

/**
 * Bloque para utilizar con los m�todos fold de MiColecci�n.
 * @author Gon
 *
 * @param <T>
 * @param <U>
 */
public interface BloqueFold<T, U> {
	/**
	 * M�todo que se ejecuta con los m�todos fold de miColecci�n.
	 * Recibe el elemento actual y el resultado de la ejecuci�n anterior del bloque.
	 * Devuelve el resultado final o el resultado para la pr�xima iteraci�n.
	 * @param unElemento
	 * @param valorAnterior
	 * @return
	 */
	public U fn(T unElemento, U valorAnterior);
}
